package org.example.documenttool.config;

import org.springframework.ai.chat.client.ChatClient;
import org.springframework.ai.chat.client.advisor.SimpleLoggerAdvisor;
import org.springframework.ai.chat.memory.ChatMemory;
import org.springframework.ai.chat.memory.InMemoryChatMemory;
import org.springframework.ai.zhipuai.ZhiPuAiChatModel;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * LLM配置
 */
@Configuration
public class LLMConfig {
    /**
     * 智普LLM配置
     */
    @Bean
    public ChatMemory getChatMemory() {
        return new InMemoryChatMemory();
    }
    @Bean("zhiPuAI")
    public ChatClient getChatClient(ZhiPuAiChatModel zhiPuAiChatModel) {
        return ChatClient.builder(zhiPuAiChatModel)
                .defaultSystem("你是一个资深pptJSON数据输出助手，你名字叫小冰，你会根据用户提示，以及现有的ppt模板的JSON生成一个对应的已经填充好内容的pptJSON数据，你只需要输出JSON数据(就是只输出花括号以及里面的的内容，要求花括号外面什么没有)，多余的任何文字都不需要")
                .defaultAdvisors(new SimpleLoggerAdvisor())
                .build();
    }

}
